package com.yserp.project.erp.bill.receivemoney.domain;

import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yserp.framework.aspectj.lang.annotation.Excel;
import com.yserp.framework.web.domain.BaseEntity;
import com.yserp.project.erp.common.anno.MybatisLikeSearch;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 收款单对象 erp_receive_money
 *
 * @author yserp
 * @date 2022-08-11
 */
@TableName("erp_receive_money")
@Data
public class ReceiveMoney extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private Long id;

    /**
     * 付款单编号
     */
    @Excel(name = "付款单编号")
    @MybatisLikeSearch
    private String orderCode;

    /**
     * 客户主键ID
     */
    private Long customerId;

    /**
     * 客户名称
     */
    @Excel(name = "客户名称")
    @MybatisLikeSearch
    private String customerName;

    /**
     * 资金业务类型
     */
    @Excel(name = "资金业务类型", readConverterExp = "1=货款,2=保证金,3=加工费")
    private String capitalType;

    /**
     * 结算方式
     */
    @Excel(name = "付款类型", readConverterExp = "1=转账,2=现金,3=银行承兑,4=其他")
    private String capitalSettlementWay;

    /**
     * 收款日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "收款日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderDate;

    /**
     * 收款银行
     */
    @Excel(name = "收款银行")
    private String receiveBank;

    /**
     * 收款账户
     */
    @Excel(name = "收款账户")
    private String receiveAccount;

    /**
     * 收款金额
     */
    @Excel(name = "收款金额")
    private BigDecimal receiveAmounts;

    /**
     * 订单审核状态
     */
    @Excel(name = "订单状态",readConverterExp = "0=待审核,1=已审核")
    private String orderStatus;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @TableLogic
    private String delFlag;

    /**
     * 版本控制
     */
    @Version
    private Integer version;


}
